package com.jsj.seafile.apiInterface;

import com.jsj.seafile.entity.UploadFileRes;
import okhttp3.OkHttpClient;

import java.io.File;
import java.util.List;

public interface ApiInterface {

    boolean getDirDeatil(OkHttpClient client,String token,String repo_id,String p);

    String obtainAuthToken(OkHttpClient client, String username, String password);

    String getUploadLink(OkHttpClient client, String token, String repo_id, String p);

    String getUploadF(OkHttpClient client, String token);

    List<UploadFileRes> uploadFile(OkHttpClient client, String token, String uploadLink, String parent_dir, String relative_path, File... files);

    String getDownLoadLink(OkHttpClient client, String token, String repo_id, String p);

    boolean realDownload(OkHttpClient client, String realLink, String p);


    String getDirDownloadToken(OkHttpClient client, String token, String repo_id, String parent_dir, String DirToken, List<String> dirents);

    boolean queryZipProgress(OkHttpClient client, String token, String dirDownloadToken);

    String getRealZipLink(OkHttpClient client, String token, String dirDownloadToken);

    String  CreateZipDownLink(OkHttpClient client,String token,String p,String repo_id);

    String getZipDownLink(OkHttpClient client,String token,String p,String repo_id);

    String getDirDownloadLink(OkHttpClient client, String token, String dirDownloadToken);

    public boolean createNewDir(OkHttpClient client, String token, String repo_id, String p);

}
